#pragma once
#include <cassert>
#include <iostream>
#include <string>



typedef struct ListNode
{
	struct ListNode* next;
	struct ListNode* prev;

	int val;
}LTNode;

ListNode* LTInit();

LTNode* buy(int x);
bool LTempty(LTNode* phead);

void LTprint(LTNode *plist);


void LTPushback(LTNode* phead,int x);
void LTPopback(LTNode* phead);

void LTpushfront(LTNode* phead, int x);
void LTpopfront(LTNode* phead);

void LTinsert(LTNode* pos, int x);
void LTerase(LTNode* pos);